Blade center KVM distribution

ABSTRACT

A system and method for providing redundant video signals from a server blade in a blade center. A blade center is described that includes a capture system for capturing a video stream off a PCI-x bus in a server blade and delivering the pair of video streams to a midplane in the blade center; and a switch module that inputs the pair of video streams and generates an unroutable video signal and a routable video signal.

FIELD OF THE INVENTION

The present invention relates generally to keyboard video mouse (KVM)signals being communicated between a blade server and a blade client,and more particularly to a system and method of providing redundantvideo signals from a blade server.

BACKGROUND OF THE INVENTION

A blade center or chassis generally consists of a plurality of bladeservers that can serve applications and data to clients of the bladecenter. Blade centers provide an infrastructure in which high endprocessing can occur at a central location thus eliminating the need todistribute and provide support to applications at remote sites. Oneexample involves keyboard video mouse (KVM) applications, in whichhigh-end video applications are run on the server blades and deliveredto remote blade clients based on keyboard and mouse commands inputted byan end user at the client site.

One of the issues currently faced with such applications is the lack offlexibility to handle different types of communication technologies suchas KVM over IP (internet protocol), point-to-point cable KVM, wirelessKVM, etc. A typical blade center is not equipped to support differenttypes of communication protocols, as each such technology may require aunique hardware/firmware/software implementation at the blade center,which limits the types of technologies provided by a blade center.Accordingly, a need exists for a more flexible approach for bladecenters to allow for multiple technologies.

SUMMARY OF THE INVENTION

The present invention relates to a system and method of providingredundant video signals using different communication protocols in ablade server environment. In one embodiment, there is a system forproviding redundant video signals from a server blade in a blade center,comprising: a capture system for capturing a video signal from a videochipset in the server blade, wherein the capture system duplicates andencapsulates the video signal into a pair of video streams and deliversthe pair of video streams to a midplane in the blade center; and aswitch module that decapsulates the pair of video streams and generatesan unroutable video signal and a routable video signal.

In a second embodiment, there is a blade center having a plurality ofserver blades, each capable of running a KVM (keyboard video mouse)application for a blade client, comprising: a plurality of daughtercards each coupled to an associated server blade that reads a videosignal off a bus in the server blade and diverts the video signal to amidplane; and a switch module that reads the video signal from themidplane and generates a first video signal using a first communicationprotocol and a second video signal using a second communicationprotocol.

In a third embodiment, there is a method of providing redundant videosignals from a server blade in a blade center, comprising: reading avideo signal off a bus generated by a hardware chipset in the serverblade; duplicating and encapsulating the video signal into a pair ofvideo streams; delivering the pair of video streams to a switch modulevia a midplane in the blade center; decapsulating the pair of videostreams; and generating an unroutable video signal and a routable videosignal.

The illustrative aspects of the present invention are designed to solvethe problems herein described and other problems not discussed.

BRIEF DESCRIPTION OF THE DRAWINGS

These and other features of this invention will be more readilyunderstood from the following detailed description of the variousaspects of the invention taken in conjunction with the accompanyingdrawings.

FIG. 1 depicts a computer system blade center in accordance with anembodiment of the present invention.

FIG. 2 depicts a daughter card and switch module for a blade center inaccordance with an embodiment of the present invention.

The drawings are merely schematic representations, not intended toportray specific parameters of the invention. The drawings are intendedto depict only typical embodiments of the invention, and thereforeshould not be considered as limiting the scope of the invention. In thedrawings, like numbering represents like elements.

DETAILED DESCRIPTION OF THE INVENTION

FIG. 1 depicts an illustrative embodiment of a blade center 10 having aplurality of server blades 12 and a switch module 18 capable ofgenerating redundant video signals using different communicationprotocols. In this illustrative embodiment, blade center 10 isconfigured to provide an unroutable video signal 20 and a routable videosignal 22, from anyone of the server blades 12. Video signals 20, 22 mayfor instance be provided by a KVM (keyboard, video, mouse) application32 running on one of the server blades 12. KVM application 32 provideshigh performance video signals from video hardware 34 to a blade client24, 28 in response to keyboard and mouse inputs.

The unroutable video signal 20 generally comprises a direct proprietarysignal that provides point-to-point high bandwidth communications with alocal blade client 24. A breakout cable 30 (e.g., cat5 or cat6 Ethernet)may be used to carry the unroutable video signal 20 to the local bladeclient 24 (typically within about 325 feet).

Routable video signal 22 may for instance be transmitted as a TCP/IPsignal on a network cable 32 that is connected to a routable network 26(e.g., the Internet). Routable video signal 22 is transmittable via theroutable network 26 to a remote blade client 28. In KVM application 32,both the local blade client 24 and remote blade client 28 are loadedwith a decoding system 30 for decoding KVM video signals.

In this illustrative configuration, each server blade 12 is providedwith a daughter card (DCard 14). The daughter card 14 captures a videosignal from a PCI-x bus generated by onboard video hardware 34 in theserver blade 12, and delivers the signal to switch module 18 viamidplane 16. Switch module 18 then generates both an unroutable androutable video signal 20, 22 for use by a blade client 24, 28. This thusallows a user the flexibility of engaging in a session from either alocal blade client 24 (which will generally provide higher performance)or a remote blade client 28, accessed via either a wired or wirelessconnection to the Internet.

FIG. 2 depicts a detailed example of the implementation of the daughtercard 14 and switch module 18. As shown, daughter card 14 includes avideo device 40 that takes a video signal off the PCI-x bus andduplicates the signal into separate video 1 and a video 2 streams. Thevideo 1 and a video 2 streams are each then encapsulated byencapsulation systems 42, 44, respectively. The encapsulated streams arethen fed via the Ethernet midplane 16 to decapsulation systems 46, 48 torecreate the video 1 and video 2 streams in the switch module 18. Anadder 50 is provided to combine the two streams to generate theunroutable video signal 20 via a local interface 52.

In addition, the video 1 and video 2 streams are fed into a pair ofcompressors 56, 58, respectively, and the outputs are fed into a lossycompressor 60 which combines the streams and provides additioncompression. The resulting stream is then fed into a TCP/IPpacketization system 62 that creates the routable vide signal 22. Notethat while this embodiment describes providing redundant unroutable androutable video signals 20, 22, it is understood that the redundant videosignals could be implemented using any known communication systems andprotocols.

It is also understood that daughter card 14 and switch module 18 may beimplemented as any type of computing infrastructure. Such a computinginfrastructure may include a processor, input/output (I/O), memory, andbus. Memory may comprise any known type of data storage such as randomaccess memory (RAM), read-only memory (ROM), a data cache, etc.

I/O 14 may comprise any system for exchanging information to/from anexternal resource. External devices/resources may comprise any knowntype of external device, including a monitor/display, speakers, storage,another computer system, a hand-held device, keyboard, mouse, voicerecognition system, speech output system, printer, facsimile, pager,etc. The bus provides a communication link between each of thecomponents in the and likewise may comprise any known type oftransmission link, including electrical, optical, wireless, etc.Although not shown, additional components, such as cache memory,communication systems, firmware, system software, etc., may beincorporated into the computing infrastructure.

The generated video signals 20, 22 may be packaged for transmission anduse over a direct connection or network such as the Internet, a localarea network (LAN), a wide area network (WAN), a virtual private network(VPN), etc. Communication could occur via a direct hardwired connection,or via an addressable connection that may utilize any combination ofwireline and/or wireless transmission methods. Moreover, conventionalnetwork connectivity, such as Token Ring, Ethernet, WiFi or otherconventional communications standards could be used. Still yet,connectivity could be provided by conventional TCP/IP sockets-basedprotocol. Blade center 10 may be implemented with any number of ports tosupport the protocols being supported.

It is understood that in addition to being implemented as a system andmethod, some of the features may be provided as a program product storedon a computer-readable medium, which when executed, enables thecomputing infrastructure to generate multiple video signals from aserver blade. To this extent, the computer-readable medium may includeprogram code, which implements the processes and systems describedherein. It is understood that the term “computer-readable medium”comprises one or more of any type of physical embodiment of the programcode. In particular, the computer-readable medium can comprise programcode embodied on one or more portable storage articles of manufacture(e.g., a compact disc, a magnetic disk, a tape, etc.), on one or moredata storage portions of a computing device, such as memory and/or astorage system, etc.

As used herein, it is understood that the terms “program code” and“computer program code” are synonymous and mean any expression, in anylanguage, code or notation, of a set of instructions that cause acomputing device having an information processing capability to performa particular function either directly or after any combination of thefollowing: (a) conversion to another language, code or notation; (b)reproduction in a different material form; and/or (c) decompression. Tothis extent, program code can be embodied as one or more types ofprogram products, such as an application/software program, componentsoftware/a library of functions, an operating system, a basic I/Osystem/driver for a particular computing and/or I/O device, and thelike. Further, it is understood that terms such as “component” and“system” are synonymous as used herein and represent any combination ofhardware and/or software capable of performing some function(s).

The block diagrams in the figures illustrate the architecture,functionality, and operation of possible implementations of systems,methods and computer program products according to various embodimentsof the present invention. In this regard, each block in the blockdiagrams may represent a module, segment, or portion of code, whichcomprises one or more executable instructions for implementing thespecified logical function(s). It should also be noted that thefunctions noted in the blocks may occur out of the order noted in thefigures. For example, two blocks shown in succession may, in fact, beexecuted substantially concurrently, or the blocks may sometimes beexecuted in the reverse order, depending upon the functionalityinvolved. It will also be noted that each block of the block diagramscan be implemented by special purpose hardware-based systems whichperform the specified functions or acts, or combinations of specialpurpose hardware and computer instructions.

Although specific embodiments have been illustrated and describedherein, those of ordinary skill in the art appreciate that anyarrangement which is calculated to achieve the same purpose may besubstituted for the specific embodiments shown and that the inventionhas other applications in other environments. This application isintended to cover any adaptations or variations of the presentinvention. The following claims are in no way intended to limit thescope of the invention to the specific embodiments described herein.

What is claimed is:
 1. A system for providing redundant video signalsfrom a server blade in a blade center, comprising: a capture system forcapturing a video signal from a video chipset in the server blade,wherein the capture system duplicates and encapsulates the video signalinto a pair of video streams and transmits the pair of video streams toa midplane in the blade center; and a switch module that decapsulatesthe pair of video streams and generates an unroutable video signal bycombining the pair of video streams with an adder, wherein the pair ofvideo streams are duplicate streams, and processing a resulting outputstream of the adder with a local interface, and a routable video signalfrom one of the pair of video streams, wherein the unroutable videosignal comprises a proprietary signal with point-to-point communicationwith a local blade client, and wherein the unroutable video signal andthe routable video signal comprise different formats of the capturedvideo signal.
 2. The system of claim 1, wherein the capture systemcomprises a daughter card that reads the video signal off a PCI-x bus.3. The system of claim 1, wherein the routable video signal is generatedby passing the pair of video streams through a pair of compressors,combining a result using a lossy compressor, and packetizing a resultingstream using a TCP/IP packetization system.
 4. The system of claim 1,wherein the video signal is generated from a KVM (keyboard, video,mouse) application.
 5. The system of claim 1, wherein the unroutablevideo signal and routable video signal are decodable at a blade client.6. A blade center having a plurality of server blades, each capable ofrunning a KVM (keyboard video mouse) application for a blade client,comprising: a plurality of daughter cards each coupled to an associatedserver blade that reads a video signal off a bus in the server blade anddiverts the video signal to a midplane; and a switch module that readsthe video signal from the midplane and generates a first video signalusing a first communication protocol and a second video signal using asecond communication protocol, wherein the first video signal isprocessed to generate a routable video signal and wherein the firstvideo signal and the second video signal are combined with an adder,wherein the first video signal and the second video signal are duplicatesignals, and a resulting output stream from the adder is processed at alocal interface in order to generate an unroutable video signal whichcomprises a proprietary signal with point-to-point communication with alocal blade client, and wherein the routable video signal and theunroutable video signal comprise different formats of the video signal.7. The blade center of claim 6, wherein the first communication protocolcomprises TCP/IP.
 8. The blade center of claim 7, wherein the secondcommunication protocol comprises a point-to-point protocol.
 9. The bladecenter of claim 6, wherein video signal is generated by a hardwarechipset on the server blade.
 10. A method of providing redundant videosignals from a server blade in a blade center, comprising: reading avideo signal off a bus generated by a hardware chipset in the serverblade; duplicating and encapsulating the video signal into a pair ofvideo streams; delivering the pair of video streams to a switch modulevia a midplane in the blade center; decapsulating the pair of videostreams; and generates an unroutable video signal by combining the pairof video streams with an adder adder, wherein the pair of video streamsare duplicate streams, and processing a resulting output stream of theadder with a local interface, and a routable video signal from one ofthe pair of video streams, wherein the unroutable video signal comprisesa proprietary signal with point-to-point communication with a localblade client, and wherein the unroutable video signal and the routablevideo signal comprise different formats of the captured video signal.11. The method of claim 10, wherein reading the video signal off the busutilizes a daughter card that reads the video signal off a PCI-x bus.12. The method of claim 10, wherein the routable video signal isgenerated by passing the pair of video streams through a pair ofcompressors, combining a result using a lossy compressor, andpacketizing a resulting stream using a TCP/IP packetization system. 13.The method of claim 10, wherein the video signal is controlled by a KVM(keyboard, video, mouse) application.
 14. The method of claim 10,wherein the unroutable video signal and routable video signal aredecodable at a blade client.